---
layout: post
title: "What GNU/Linux Could Learn From Apple"
date: 2012-09-02
comments: false
categories:
 - Developers
 - OS X
 - Linux
 - Desktop.
 - apple
---

<div class='post'>
<div dir="ltr" style="text-align: left;" trbidi="on">A lot of recent posts on Hacker News suggest that Linux is dead on Desktop and OS X killed it. Well I don't think that it is still dead or it will be ever.<br />Instead of Lamenting on it, we should learn from our mistakes and also from success of OS X. Here are some of things we could do:<br /><br /><b>User Interface</b>: This is one place where OS X beats Linux by huge margin, Apple hire the best graphic designers and they put a lot of effort on how it looks and how&nbsp;intuitive is feels. Linux really need to improve on the UI specially we need excellent graphic designers that can create the next gen graphics. We could also take a lesson from Androids, they look awesome and they have a Linux at the core. The problem of fragmentation can be get rid with a unified great looking Desktop Environment that is functional as well as beautiful. We could always have the choice of other DE, but there should be one that could cater of masses of people who just want there OS to work and don't have the technical aptitude to tweak it.<br /><br /><b>Softwares</b>: This is one place where we have a lead. The only problem is that we don't have as much third party developers developing for Linux. One way to fix that is that we could have a central Software center that could provides softwares for almost all the Linux Distributions. Package management system could be merged into one or we could have a same package management in addition to the other package manager specific to that distro.<br /><br /><br /><b>Stability</b>: This is one thing that really needs to be addressed very seriously. No user wants his OS to crash performing an update or release upgrade. These issues should be addressed from the smallest level and only stable kernels should be included. Also advanced filesystem such as ZFS or BRFTS should be included as soon as possible such that we do fast backups and full system rollback.<br /><br /><b>Focus on Developers</b>: OS X earned a huge advantage because it focused on developers and provided everything they need on a very stable environment. We need to beat them in that. We have all the tools , we just need to make it more organized and less painful. Any new release should make it their first priority to see that setting a &nbsp;development environment is as easy as clicking a button on software center or by a unified command that fetches all dependencies. They could be grouped as say Rails Development, Python Development, PHP Development. Surely we can trim these unified packages if we need. But a developer not used to Linux would like to start with his development as soon as possible without learning to mess with the Operating system."<b><i>Just Works</i></b>" is a important factor that we need to focus on<i>.<b>It is very crucial because these are the developer who will build third party apps and availability of these apps could only attract masses to adopt Linux.</b></i><br /><i><b><br /></b></i>We need to play on our strengths rather than trying to imitate Apple. They have their limits, We have freedom to choose, We can offer our OS for free, They can't. We can give away open source softwares for free, They cant do that.With the other Hardware manufactures catching up soon, Apple won't have a next gen leap with their hardware. Android devices have already proved it is possible.<br /><i><b><br /></b></i><i style="font-weight: bold;">Imagine an OS with a UI better than Macs, and free softwares in vast Apt Repositories(just an example..don't kill me for it). Stability and full drivers support. This could be </i><b>Linux </b><b><i>that could really be the </i>Desktop of the Year.&nbsp;</b><br /><b><br /></b><b>P.S Everyone who hates these ideas are welcome to suggest better ones, i am just suggesting ideas and I am sure there are better ones.&nbsp;</b><br /><b><br /></b><b><br /></b><br /><br /></div></div>
